package com.itheima.mp.domain.query;

import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.Data;

//@Data
//public class PageQuery {
//    private Integer pageNo;
//    private Integer pageSize;
//    private String sortBy;
//    private Boolean isAsc;
//
//    public <T>  Page<T> toMpPage(OrderItem ... orders){
//        // 1.分页条件
//        Page<T> p = Page.of(pageNo, pageSize);
//        // 2.排序条件
//        // 2.1.先看前端有没有传排序字段
//        if (sortBy != null) {
//            p.addOrder(new OrderItem(sortBy, isAsc));
//            return p;
//        }
//        // 2.2.再看有没有手动指定排序字段
//        if(orders != null){
//            p.addOrder(orders);
//        }
//        return p;
//    }
//
//    public <T> Page<T> toMpPage(String defaultSortBy, boolean isAsc){
//        return this.toMpPage(new OrderItem(defaultSortBy, isAsc));
//    }
//
//    public <T> Page<T> toMpPageDefaultSortByCreateTimeDesc() {
//        return toMpPage("create_time", false);
//    }
//
//    public <T> Page<T> toMpPageDefaultSortByUpdateTimeDesc() {
//        return toMpPage("update_time", false);
//    }
//}
